1/1
Ethernet MAC without external Memory
by shahab47 on Dec 2, 2010 |
shahab47
Posts: 2 Joined: Dec 2, 2010 Last seen: Dec 3, 2010 |
||
Hello Everybody.
I am working on including Ethernet functionality in my Spartan6 FPGA board. It is a custom board and it does NOT have external memory. So the software program to run the ethernet core has to be stored within the FPGA blockrams. Is this possible? Because everywhere I see, people have done this project with external memory. In my case, its not possible, becuase the board is already made and there is no possibility of a re-spin. Please advise. Thanks. Shahab |
RE: Ethernet MAC without external Memory
by shahab47 on Dec 2, 2010 |
shahab47
Posts: 2 Joined: Dec 2, 2010 Last seen: Dec 3, 2010 |
||
I forgot to ask one question in my previous post:
Does the Ethernet MAC provided by opencores need any software to make the internet run on it? |
RE: Ethernet MAC without external Memory
by richard_vlamynck on Dec 2, 2010 |
richard_vlamynck
Posts: 31 Joined: Sep 15, 2008 Last seen: Jan 24, 2016 |
||
If you want to use an ethernet MAC without any software driving it, then you could create the driver in hardware using code written in either verilog or vhdl. For example, you would code a "producer" module in verilog that constructs a udp/ip packet with header and payload and pushes it to the ethernet MAC. Then you could code a "consumer" module in verilog that receives a packet from the ethernet MAC. Then you could write a "ping" module in verilog that sends back any ip packet to the same address that it came from. In this fashion you could use the ethernet MAC without any software. You might find that the creation of the upper layers of the ip stack in verilog is more time consuming and error prone than using software. If you're really determined on avoiding the use of any software, you can consider other hardware description and generation tools besides vlog/vhdl to create the needed support modules in hardware to drive the ethernet MAC.
|
RE: Ethernet MAC without external Memory
by mkinsley on Dec 3, 2010 |
mkinsley
Posts: 1 Joined: Oct 27, 2010 Last seen: Oct 3, 2014 |
||
Hello shahab47
You'll need get a better idea of what Ethernet traffic you're trying to handle. You could send & receive UDP/IP packets with a fairly simple logic design, if however you're trying to do anything with TCP/IP (eg have a web server) you'll need a processor with reasonable amounts of ROM & RAM (take a look at uIP & lwIP) Regards, Mark |
1/1